Scroll to navigation

SYMLINK(2) п═я┐п╨п╬п╡п╬п╢я│я┌п╡п╬ п©я─п╬пЁя─п╟п╪п╪п╦я│я┌п╟ Linux SYMLINK(2)

п≤п°п╞

symlink - я│п╬п╥п╢п╟я┌я▄ п╫п╬п╡п╬п╣ п╦п╪я▐ п╢п╩я▐ я└п╟п╧п╩п╟

п·п▒п≈п·п═

#include <unistd.h>

int symlink(const char *oldpath, const char *newpath);


п╒я─п╣п╠п╬п╡п╟п╫п╦я▐ п╪п╟п╨я─п╬я│п╟ я┌п╣я│я┌п╦я─п╬п╡п╟п╫п╦я▐ я│п╡п╬п╧я│я┌п╡ п╢п╩я▐ glibc (я│п╪. feature_test_macros(7)):

symlink(): _BSD_SOURCE || _XOPEN_SOURCE >= 500 || _POSIX_C_SOURCE>= 200112L

п·п÷п≤п║п░п²п≤п∙

symlink() я│п╬п╥п╢п╟п╣я┌ я│п╦п╪п╡п╬п╩я▄п╫я┐я▌ я│я│я▀п╩п╨я┐ я│ п╦п╪п╣п╫п╣п╪ newpath, п╨п╬я┌п╬я─п╟я▐ я│п╬п╢п╣я─п╤п╦я┌ я│я┌я─п╬п╨я┐ oldpath.

п║п╦п╪п╡п╬п╩я▄п╫я▀п╣ я│я│я▀п╩п╨п╦ п╦п╫я┌п╣я─п©я─п╣я┌п╦я─я┐я▌я┌я│я▐ б╚п╫п╟ п╩п╣я┌я┐б╩, п╨п╟п╨-п╠я┐п╢я┌п╬ п╠я▀ я│п╬п╢п╣я─п╤п╦п╪п╬п╣ я│я│я▀п╩п╨п╦ п╠я▀п╩п╬ п©п╬п╢я│я┌п╟п╡п╩п╣п╫п╬ п╡п╪п╣я│я┌п╬ п©я┐я┌п╦, п©п╬ п╨п╬я┌п╬я─п╬п╪я┐ п╦п╢я▒я┌ п©п╬п╦я│п╨ я└п╟п╧п╩п╟ п╦п╩п╦ п╨п╟я┌п╟п╩п╬пЁп╟.

п║п╦п╪п╡п╬п╩я▄п╫я▀п╣ я│я│я▀п╩п╨п╦ п╪п╬пЁя┐я┌ я│п╬п╢п╣я─п╤п╟я┌я▄ п╨п╬п╪п©п╬п╫п╣п╫я┌я▀ п©я┐я┌п╦ .., п╨п╬я┌п╬я─я▀п╣ (п╣я│п╩п╦ п╦я│п©п╬п╩я▄п╥я┐я▌я┌я│я▐ п╡ п╫п╟я┤п╟п╩п╣ я│я│я▀п╩п╨п╦) я│я│я▀п╩п╟я▌я┌я│я▐ п╫п╟ я─п╬п╢п╦я┌п╣п╩я▄я│п╨п╦п╧ п╨п╟я┌п╟п╩п╬пЁ я┌п╬пЁп╬ п╨п╟я┌п╟п╩п╬пЁп╟, п╡ п╨п╬я┌п╬я─п╬п╪ п╫п╟я┘п╬п╢п╦я┌я│я▐ я│я│я▀п╩п╨п╟.

п║п╦п╪п╡п╬п╩я▄п╫п╟я▐ я│я│я▀п╩п╨п╟ (я┌п╟п╨п╤п╣ п╦п╥п╡п╣я│я┌п╫п╟я▐ п╨п╟п╨ б╚п╪я▐пЁп╨п╟я▐ я│я│я▀п╩п╨п╟б╩) п╪п╬п╤п╣я┌ я┐п╨п╟п╥я▀п╡п╟я┌я▄ п╨п╟п╨ п╫п╟ я│я┐я┴п╣я│я┌п╡я┐я▌я┴п╦п╧, я┌п╟п╨ п╦ п╫п╟ п╫п╣я│я┐я┴п╣я│я┌п╡я┐я▌я┴п╦п╧ я└п╟п╧п╩я▀; п╡ п©п╬я│п╩п╣п╢п╫п╣п╪ я│п╩я┐я┤п╟п╣ я┌п╟п╨п╟я▐ я│я│я▀п╩п╨п╟ п╫п╟п╥я▀п╡п╟п╣я┌я│я▐ п©п╬п╡п╦я│я┬п╣п╧ (dangling).

п÷я─п╟п╡п╟ п╢п╬я│я┌я┐п©п╟ я│п╦п╪п╡п╬п╩я▄п╫п╬п╧ я│я│я▀п╩п╨п╦ п╫п╣ п╦п╪п╣я▌я┌ п╥п╫п╟я┤п╣п╫п╦я▐; п©я─п╦п╫п╟п╢п╩п╣п╤п╫п╬я│я┌я▄ п╬п©я─п╣п╢п╣п╩я▒п╫п╫п╬п╪я┐ п╡п╩п╟п╢п╣п╩я▄я├я┐ п╦пЁп╫п╬я─п╦я─я┐п╣я┌я│я▐ п©я─п╦ п©п╣я─п╣я┘п╬п╢п╣ п©п╬ я│я│я▀п╩п╨п╣, п╫п╬ п©я─п╬п╡п╣я─я▐п╣я┌я│я▐ п©я─п╦ я┐п╢п╟п╩п╣п╫п╦п╦ п╦п╩п╦ п©п╣я─п╣п╦п╪п╣п╫п╬п╡п╟п╫п╦п╦ я│я│я▀п╩п╨п╦, п╟ я┌п╟п╨п╤п╣ я│я│я▀п╩п╨п╦ п╡ п╨п╟я┌п╟п╩п╬пЁ я│ я┐я│я┌п╟п╫п╬п╡п╩п╣п╫п╫я▀п╪ п╥п╟п╨я─п╣п©п╩я▐я▌я┴п╦п╪ (sticky) п╠п╦я┌п╬п╪ (S_ISVTX).

п∙я│п╩п╦ newpath я│я┐я┴п╣я│я┌п╡я┐п╣я┌, я┌п╬ п╬п╫ п╫п╣ п╠я┐п╢п╣я┌ п©п╣я─п╣п╥п╟п©п╦я│п╟п╫.

п▓п·п≈п▓п═п░п╘п░п∙п°п·п∙ п≈п²п░п╖п∙п²п≤п∙

п÷я─п╦ я┐я│п©п╣я┬п╫п╬п╪ п╡я▀п©п╬п╩п╫п╣п╫п╦п╦ п╡п╬п╥п╡я─п╟я┴п╟п╣я┌я│я▐ 0. п▓ я│п╩я┐я┤п╟п╣ п╬я┬п╦п╠п╨п╦ п╡п╬п╥п╡я─п╟я┴п╟п╣я┌я│я▐ -1, п╟ errno я┐я│я┌п╟п╫п╟п╡п╩п╦п╡п╟п╣я┌я│я▐ п╡ я│п╬п╬я┌п╡п╣я┌я│я┌п╡я┐я▌я┴п╣п╣ п╥п╫п╟я┤п╣п╫п╦п╣.

п·п╗п≤п▒п п≤

п²п╣я┌ п©я─п╟п╡ п╫п╟ п╥п╟п©п╦я│я▄ п╡ п╨п╟я┌п╟п╩п╬пЁ, я│п╬п╢п╣я─п╤п╟я┴п╦п╧я│я▐ п╡ newpath, п╦п╩п╦ п╡ п╬п╢п╫п╬п╪ п╦п╥ п╨п╟я┌п╟п╩п╬пЁп╬п╡ п╡ newpath п╫п╣ я─п╟п╥я─п╣я┬я▒п╫ п©п╬п╦я│п╨ (я│п╪. я┌п╟п╨п╤п╣ path_resolution(7)).
newpath я┐п╤п╣ я│я┐я┴п╣я│я┌п╡я┐п╣я┌.
oldpath п╦ newpath я┐п╨п╟п╥я▀п╡п╟я▌я┌ п╥п╟ п©я─п╣п╢п╣п╩я▀ п╢п╬я│я┌я┐п©п╫п╬пЁп╬ п╟п╢я─п╣я│п╫п╬пЁп╬ п©я─п╬я│я┌я─п╟п╫я│я┌п╡п╟.
п÷я─п╬п╦п╥п╬я┬п╩п╟ п╬я┬п╦п╠п╨п╟ п╡п╡п╬п╢п╟-п╡я▀п╡п╬п╢п╟.
п▓п╬ п╡я─п╣п╪я▐ п╬п©я─п╣п╢п╣п╩п╣п╫п╦я▐ newpath п╡я│я┌я─п╣я┌п╦п╩п╬я│я▄ я│п╩п╦я┬п╨п╬п╪ п╪п╫п╬пЁп╬ я│п╦п╪п╡п╬п╩я▄п╫я▀я┘ я│я│я▀п╩п╬п╨.
п║п╩п╦я┬п╨п╬п╪ п╢п╩п╦п╫п╫п╬п╣ п╥п╫п╟я┤п╣п╫п╦п╣ п╟я─пЁя┐п╪п╣п╫я┌п╟ oldpath п╦п╩п╦ newpath.
п п╬п╪п©п╬п╫п╣п╫я┌ п©я┐я┌п╦ newpath п╫п╣ я│я┐я┴п╣я│я┌п╡я┐п╣я┌ п╦п╩п╦ я▐п╡п╩я▐п╣я┌я│я▐ п©п╬п╡п╦я│я┬п╣п╧ я│п╦п╪п╡п╬п╩я▄п╫п╬п╧ я│я│я▀п╩п╨п╬п╧.
п²п╣п╢п╬я│я┌п╟я┌п╬я┤п╫п╬п╣ п╨п╬п╩п╦я┤п╣я│я┌п╡п╬ п©п╟п╪я▐я┌п╦ я▐п╢я─п╟.
п²п╟ я┐я│я┌я─п╬п╧я│я┌п╡п╣ я│ я└п╟п╧п╩п╬п╪ п╫п╣я┌ п╪п╣я│я┌п╟ п╢п╩я▐ я│п╬п╥п╢п╟п╫п╦я▐ п╫п╬п╡п╬пЁп╬ я█п╩п╣п╪п╣п╫я┌п╟ п╨п╟я┌п╟п╩п╬пЁп╟.
п п╬п╪п©п╬п╫п╣п╫я┌ п©я┐я┌п╦, п╦я│п©п╬п╩я▄п╥п╬п╡п╟п╫п╫я▀п╧ п╨п╟п╨ п╨п╟я┌п╟п╩п╬пЁ п╡ newpath, п╡ п╢п╣п╧я│я┌п╡п╦я┌п╣п╩я▄п╫п╬я│я┌п╦ я┌п╟п╨п╬п╡я▀п╪ п╫п╣ я▐п╡п╩я▐п╣я┌я│я▐.
п╓п╟п╧п╩п╬п╡п╟я▐ я│п╦я│я┌п╣п╪п╟, я│п╬п╢п╣я─п╤п╟я┴п╟я▐ newpath, п╫п╣ п©п╬п╢п╢п╣я─п╤п╦п╡п╟п╣я┌ я│п╬п╥п╢п╟п╫п╦п╣ я│п╦п╪п╡п╬п╩я▄п╫я▀я┘ я│я│я▀п╩п╬п╨.
newpath п╫п╟я┘п╬п╢п╦я┌я│я▐ п╫п╟ я└п╟п╧п╩п╬п╡п╬п╧ я│п╦я│я┌п╣п╪п╣, п╢п╬я│я┌я┐п©п╫п╬п╧ я┌п╬п╩я▄п╨п╬ п╢п╩я▐ я┤я┌п╣п╫п╦я▐.

п║п·п·п╒п▓п∙п╒п║п╒п▓п≤п∙ п║п╒п░п²п■п░п═п╒п░п°

SVr4, 4.3BSD, POSIX.1-2001.

п≈п░п°п∙п╖п░п²п≤п╞

п²п╣ п╡я▀п©п╬п╩п╫я▐п╣я┌я│я▐ п©я─п╬п╡п╣я─п╨п╟ oldpath.

п÷я─п╦ я┐п╢п╟п╩п╣п╫п╦п╣ п╦п╪п╣п╫п╦, п╫п╟ п╨п╬я┌п╬я─я▀п╧ я│я│я▀п╩п╟п╣я┌я│я▐ я│п╦п╪п╡п╬п╩я▄п╫п╟я▐ я│я│я▀п╩п╨п╟, п©я─п╬п╦п╥п╬п╧п╢я▒я┌ я┐п╢п╟п╩п╣п╫п╦п╣ я└п╟п╧п╩п╟ (п╣я│п╩п╦ я┌п╬п╩я▄п╨п╬ я┐ п╫п╣пЁп╬ п╫п╣я┌ п╢я─я┐пЁп╦я┘ п╤я▒я│я┌п╨п╦я┘ я│я│я▀п╩п╬п╨). п∙я│п╩п╦ я┌п╟п╨п╬п╣ п©п╬п╡п╣п╢п╣п╫п╦п╣ п╫п╣п╤п╣п╩п╟я┌п╣п╩я▄п╫п╬, п╦я│п©п╬п╩я▄п╥я┐п╧я┌п╣ link(2).

п║п°п·п╒п═п≤п╒п∙ п╒п░п п√п∙

ln(1), lchown(2), link(2), lstat(2), open(2), readlink(2), rename(2), symlinkat(2), unlink(2), path_resolution(7), symlink(7)

2007-07-26 Linux